package com.bdqn.petmalldemo.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.bdqn.petmalldemo.bo.PetAddBo;
import com.bdqn.petmalldemo.bo.ProductUpdateBo;
import com.bdqn.petmalldemo.bo.SearchProductBo;
import com.bdqn.petmalldemo.entity.Product;

import java.util.List;
import java.util.Map;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author Lenovo
 * @since 2020-02-10
 */
public interface ProductService extends IService<Product> {

    /**
     * 根据条件查询商品信息
     * @param searchProductBo
     * @return
     */
    Map<String,Object> searchProduct(SearchProductBo searchProductBo);

    /**
     * 首页热度Top10商品
     * @return
     */
    List<Product> hotTopProduct();

    /**
     *推荐商品
     * @return
     */
    List<Product> recommendProduct();

    /**
     * 添加宠物
     * @param petAddBo
     */
    void addPet(PetAddBo petAddBo);

    /**
     * 编辑商品
     * @param productUpdateBo
     */
    void updateProduct(ProductUpdateBo productUpdateBo);

    /**
     * 删除商品
     * @param id
     */
    void deleteProductById(String id);

    /**
     * 修改商品状态
     * @param productId
     * @param status
     */
    void updateProductStatus(String productId,Integer status);

    /**
     * 更新商品和商品分类的浏览记录数量
     * @param productId
     * @param categoryId
     */
    void addViewNum(String productId,Long categoryId);

}
